// 程序启动入口
// @author
package main

import (
	"fmt"
	"ishot-server/config"
	"ishot-server/core"
	_ "ishot-server/docs"
	"ishot-server/global"
	"ishot-server/router"
)

// @title 运维
// @version 1.0
// @description 后台API接口文档
// @securityDefinitions.apikey ApiKeyAuth
// @in header
// @name Authorization
func main() {
	fmt.Println("运维项目。。。。。")
	fmt.Println("系统配置信息！", config.Config.System)
	fmt.Println("logger配置信息！", config.Config.Logger)

	// 初始化日志
	global.Log = core.InitLogger()
	global.Log.Warnln("go的日志")
	global.Log.Error("go的日志")
	global.Log.Infof("go的日志")
	// 打印token配置
	global.Log.Infof("token配置: %s:%d:%s:%s", config.Config.Token.Headers,
		config.Config.Token.ExpireTime, config.Config.Token.Secret,
		config.Config.Token.Issuer)

	// 初始化mysql
	core.MysqlInit()
	// 初始化redis
	core.RedisInit()

	// 初始化路由
	router := router.InitRouter()
	address := fmt.Sprintf("%s:%s", config.Config.System.Host,
		config.Config.System.Port)
	global.Log.Infof("系统启动成功，运行在: %s", address)
	router.Run(address)
}
